///******************************************************************************* // * Copyright (c) 2000, 2006 IBM Corporation and others. // * All rights reserved. This program and the accompanying materials // * are made available under the terms of the Eclipse Public License v1.0 // * which accompanies this distribution, and is available at // * http://www.eclipse.org/legal/epl-v10.html // * // * Contributors: // * IBM Corporation - initial API and implementation // *******************************************************************************/ // //package org.eclipse.ui.tests.keys; // //import org.eclipse.swt.SWT; //import org.eclipse.swt.widgets.Event; //import org.eclipse.ui.keys.KeyStroke; //import org.eclipse.ui.keys.ParseException; //import org.eclipse.ui.keys.SWTKeySupport; //import org.eclipse.ui.tests.harness.util.UITestCase; // ///** // * Test for Bug 42035. // * // * @since 3.0 // */ //public class Bug42035Test extends UITestCase { // // /** // * Tests the given key event to see if generates the three key strokes // * represented by the strings. // * // * @param keyEvent // * The key event to generate key strokes from; must not be // * <code>null</code> // * @param firstMatch // * The text format of the first match; must not be <code>null</code>. // * @param secondMatch // * The text format of the second match; must not be <code>null</code>. // * @param thirdMatch // * The text format of the third match; must not be <code>null</code>. // * @throws ParseException // * If anyone of the text formats provided cannot be parsed. // */ // private static void testKeyEvent(Event keyEvent, String firstMatch, // String secondMatch, String thirdMatch) throws ParseException { // KeyStroke desiredKeyStroke = null; // KeyStroke actualKeyStroke = null; // // // Test the first-level match. // desiredKeyStroke = KeyStroke.getInstance(firstMatch); //$NON-NLS-1$ // actualKeyStroke = SWTKeySupport // .convertAcceleratorToKeyStroke(SWTKeySupport // .convertEventToUnmodifiedAccelerator(keyEvent)); // assertEquals( // "Unmodified character with all modifiers doesn't match.", desiredKeyStroke, actualKeyStroke); //$NON-NLS-1$ // // // Test the second-level match. // desiredKeyStroke = KeyStroke.getInstance(secondMatch); //$NON-NLS-1$ // actualKeyStroke = SWTKeySupport // .convertAcceleratorToKeyStroke(SWTKeySupport // .convertEventToUnshiftedModifiedAccelerator(keyEvent)); // assertEquals( // "Modified character with no shift doesn't match.", desiredKeyStroke, actualKeyStroke); //$NON-NLS-1$ // // // Test the third-level match. // desiredKeyStroke = KeyStroke.getInstance(thirdMatch); //$NON-NLS-1$ // actualKeyStroke = SWTKeySupport // .convertAcceleratorToKeyStroke(SWTKeySupport // .convertEventToModifiedAccelerator(keyEvent)); // assertEquals( // "Modified character with all modifiers doesn't match.", desiredKeyStroke, actualKeyStroke); //$NON-NLS-1$ // } // // /** // * Constructs a new instance of this test case. // * // * @param testName // * The name of the test // */ // public Bug42035Test(String testName) { // super(testName); // } // // /** // * Tests that "Ctrl+" generates "Ctrl+", "Ctrl+" and "Ctrl+". // * // * @throws ParseException // * If "CTRL+" cannot be processed. // */ // public void testCtrl() throws ParseException { // Event keyEvent = new Event(); // keyEvent.keyCode = 0x40000; // keyEvent.character = 0x00; // keyEvent.stateMask = SWT.NONE; // // KeyStroke desiredKeyStroke = KeyStroke.getInstance("CTRL+"); //$NON-NLS-1$ // KeyStroke actualKeyStroke = SWTKeySupport // .convertAcceleratorToKeyStroke(SWTKeySupport // .convertEventToUnmodifiedAccelerator(keyEvent)); // assertEquals( // "Unmodified character with all modifiers doesn't match", desiredKeyStroke, actualKeyStroke); //$NON-NLS-1$ // } // // /** // * Tests that "Ctrl+Enter" generates "Ctrl+Enter", "Ctrl+Enter" and // * "Ctrl+Enter". // * // * @throws ParseException // * If "CTRL+ENTER" cannot be processed. // */ // public void testCtrlEnter() throws ParseException { // Event keyEvent = new Event(); // keyEvent.keyCode = 0x0D; // keyEvent.character = 0x0D; // keyEvent.stateMask = SWT.CTRL; // // testKeyEvent(keyEvent, "CTRL+CR", "CTRL+CR", "CTRL+CR"); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ // } // // /** // * Tests that "Ctrl+J" generates "Ctrl+M", "Ctrl+M" and "Ctrl+M". // * // * @throws ParseException // * If "CTRL+M" cannot be processed. // */ // public void testCtrlM() throws ParseException { // Event keyEvent = new Event(); // keyEvent.keyCode = 0x6D; // keyEvent.character = 0x0D; // keyEvent.stateMask = SWT.CTRL; // // testKeyEvent(keyEvent, "CTRL+M", "CTRL+M", "CTRL+M"); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ // } // // /** // * Tests that "Ctrl+Shift+2" generates "Ctrl+Shift+2", "Ctrl+@" and // * "Ctrl+Shift+@". This simulates a U.S. keyboard layout. // * // * @throws ParseException // * If "CTRL+SHIFT+2", "CTRL+@" or "CTRL+SHIFT+@" cannot be // * processed. // */ // public void testCtrlShift2() throws ParseException { // Event keyEvent = new Event(); // keyEvent.keyCode = '2'; // keyEvent.character = 0x00; // keyEvent.stateMask = SWT.CTRL | SWT.SHIFT; // // testKeyEvent(keyEvent, "CTRL+SHIFT+2", "CTRL+@", "CTRL+SHIFT+@"); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ // } // // /** // * Tests that "Ctrl+Shift+7" generates "Ctrl+Shift+7", "Ctrl+/" and // * "Ctrl+Shift+/". This simulates a Swiss-German keyboard layout. // * // * @throws ParseException // * If "CTRL+SHIFT+7", "CTRL+/" or "CTRL+SHIFT+/" cannot be // * processed. // */ // public void testCtrlShift7_SwissGerman() throws ParseException { // Event keyEvent = new Event(); // keyEvent.keyCode = '7'; // keyEvent.character = '/'; // keyEvent.stateMask = SWT.CTRL | SWT.SHIFT; // // testKeyEvent(keyEvent, "CTRL+SHIFT+7", "CTRL+/", "CTRL+SHIFT+/"); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ // } // // /** // * Tests that "Ctrl+Shift+7" generates "Ctrl+Shift+7", "Ctrl+&" and // * "Ctrl+Shift+&". This simulates a US keyboard layout. // * // * @throws ParseException // * If "CTRL+SHIFT+7", "CTRL+&" or "CTRL+SHIFT+&" cannot be // * processed. // */ // public void testCtrlShift7_US() throws ParseException { // Event keyEvent = new Event(); // keyEvent.keyCode = '7'; // keyEvent.character = '&'; // keyEvent.stateMask = SWT.CTRL | SWT.SHIFT; // // testKeyEvent(keyEvent, "CTRL+SHIFT+7", "CTRL+&", "CTRL+SHIFT+&"); //$NON-NLS-1$//$NON-NLS-2$//$NON-NLS-3$ // } //}